﻿namespace System.Web.Mvc
{
    public static class DateExtensions
    {
        public static string When(this DateTime date)
        {
            var timeSince = DateTime.Now.Subtract(date);
            if (timeSince.TotalMilliseconds < 1) return "henüz";
            if (timeSince.TotalMinutes < 1) return "az önce";
            if (timeSince.TotalMinutes < 60) return string.Format("{0} dakika önce", timeSince.Minutes);
            if (timeSince.TotalHours < 24) return string.Format("{0} saat önce", timeSince.Hours);
            if (timeSince.TotalDays == 1) return "dün";
            if (timeSince.TotalDays < 7) return string.Format("{0} gün önce", timeSince.Days);
            if (timeSince.TotalDays < 14) return "geçen hafta";
            if (timeSince.TotalDays < 21) return "2 hafta önce";
            if (timeSince.TotalDays < 28) return "3 hafta önce ";
            if (timeSince.TotalDays < 60) return "geçen ay";
            if (timeSince.TotalDays < 365) return string.Format("{0} ay önce", Math.Round(timeSince.TotalDays / 30));
            if (timeSince.TotalDays < 730) return "geçen yıl";
            return string.Format("{0} yıl önce", Math.Round(timeSince.TotalDays / 365));
        }

        public static string ToDateString(this DateTime date)
        {
            return date.ToString("dddd, dd MMMM yyyy");
        }
    }
}